package br.com.cnpv.modelo.dao;

import java.util.List;

import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;

import br.com.cnpv.modelo.acesso.idao.IFuncionalidadeDAO;
import br.com.cnpv.modelo.entity.Funcionalidade;
import br.com.cnpv.modelo.entity.Perfil;

public class FuncionalidadeDAO implements IFuncionalidadeDAO{

	@SuppressWarnings("unchecked")
	public List<Funcionalidade> buscar(Funcionalidade funcionalidade, Session session) throws HibernateException {
		
		Query query = session.getNamedQuery("Funcionalidade.buscar");
		query.setString("nmFuncionalidade", "%"+funcionalidade.getNmFuncionalidade()+"%");
		
		return query.list();
	}

	public void saveOrUpdate(Funcionalidade funcionalidade, Session session) throws HibernateException {
		session.merge(funcionalidade);
	}
	
	@SuppressWarnings("unchecked")
	@Override
	public List<Funcionalidade> listar(Session session) throws HibernateException 
	{
		Query query = session.getNamedQuery("Funcionalidade.listar");
		return query.list();
	}

}